/**
 * 
 */
package com.mbengue.corp.apr.ra.dao;

import java.util.List;

import org.hibernate.HibernateException;

import com.mbengue.corp.apr.ra.core.Adresse;

/**
 * Gere l'ajout, la suppression, la modification et la recherche d'adresse
 * @author MMB11447
 *
 */
public interface AdresseDao extends AprDao<Adresse, Long> {

	/**
	 * Ajoute la nouvelle adresse dans la base de donnees.
	 * 
	 * @param adresse {@link Adresse} a ajouter
	 * @throws HibernateException
	 */
	//public void ajouterAdresse(Adresse adresse) throws HibernateException;
	
	/**
	 * Retrouve l'adresse dont l'identifiant est donne en entree
	 * 
	 * @param idAdresse {@link Long}
	 * @return {@link Adresse} correspondant a l'identifiant
	 */
	public Adresse trouverAdresse(long idAdresse);
	
	/**
	 * Retourne toutes les adresses comportant le code postal donne en entree.
	 * 
	 * @param codePostal {@link String} code postal de la localite
	 * @return {@link List} d'adresse
	 */
	public List<Adresse> trouverAdresseParCP(String codePostal);
}
